Spring Boot開啟的2種方式

Java

Posted by Java on 2019-11-14 14:20:00

Spring Boot依賴

使用Spring Boot很簡單,先添加基礎依賴包,有以下兩種方式

1.繼承spring-boot-starter-parent項目


 
  1. <parent>

  2.    <groupId>org.springframework.boot</groupId>

  3.    <artifactId>spring-boot-starter-parent</artifactId>

  4.    <version>1.5.6.RELEASE</version>

  5. </parent>

2.引入spring-boot-dependencies項目依賴


 
  1. <dependencyManagement>

  2.    <dependencies>

  3.        <dependency>

  4.            <groupId>org.springframework.boot</groupId>

  5.            <artifactId>spring-boot-dependencies</artifactId>

  6.            <version>1.5.6.RELEASE</version>

  7.            <type>pom</type>

  8.            <scope>import</scope>

  9.        </dependency>

  10. </dependencyManagement>

 

Spring Boot依賴注意點

1.屬性覆蓋只對繼承有效

僅當您的Maven項目(直接或間接)繼承自spring-boot-dependencies時,此方法才有效。如果您在自己的dependencyManagement部分中添加了spring-boot-dependencies,進口您必須自己重新定義工件,而不是覆蓋屬性。

Spring Boot依賴包裡面的組件的版本都是和當前Spring Boot綁定的,如果要修改裡面組件的版本,只需要添加以下屬性覆蓋即可,但這種方式只對繼承有效,導入的方式無效。


 
  1. <properties>

  2.    <slf4j.version>1.7.25<slf4j.version>

  3. </properties>

如果引入的方式要實現版本的升級,達到上面的效果,這樣也可以做到,把要升級的組件依賴放到Spring Boot之前。


 
  1. <dependencyManagement>

  2.    <dependencies>

  3.        <!-- Override Spring Data release train provided by Spring Boot -->

  4.        <dependency>

  5.            <groupId>org.springframework.data</groupId>

  6.            <artifactId>spring-data-releasetrain</artifactId>

  7.            <version>Fowler-SR2</version>

  8.            <scope>import</scope>

  9.            <type>pom</type>

  10.        </dependency>

  11.        <dependency>

  12.            <groupId>org.springframework.boot</groupId>

  13.            <artifactId>spring-boot-dependencies</artifactId>

  14.            <version>1.5.6.RELEASE</version>

  15.            <type>pom</type>

  16.            <scope>import</scope>

  17.        </dependency>

  18.    </dependencies>

  19. </dependencyManagement>

每個Spring Boot版本都是針對一組特定的第三方依賴項進行設計和測試的。覆蓋版本可能會導致兼容性問題。

需要注意,要修改Spring Boot的依賴組件版本可能會造成不兼容的問題。